package com.ecommerce.model;

import java.util.Date;

public class User {
    private int id;
    private String username;
    private String password;
    private String email;
    private String role;
    private Date createdAt;

    public User() {}

    public User(String username, String password, String email, String role) {
        this.username = username;
        this.password = password;
        this.email = email;
        this.role = role;
    }

    // Getters and Setters
    public int getId() { return id; }
    public void setId(int id) { this.id = id; }

    public String getUsername() { return username; }
    public void setUsername(String username) { this.username = username; }

    public String getPassword() { return password; }
    public void setPassword(String password) { this.password = password; }

    public String getEmail() { return email; }
    public void setEmail(String email) { this.email = email; }

    public String getRole() { return role; }
    public void setRole(String role) { this.role = role; }

    public Date getCreatedAt() { return createdAt; }
    public void setCreatedAt(Date createdAt) { this.createdAt = createdAt; }

    @Override
    public String toString() {
        return String.format("ID: %d | 用户名: %s | 邮箱: %s | 角色: %s",
                id, username, email, getRoleText());
    }

    public String toDetailedString() {
        return String.format(
                "用户ID: %d\n用户名: %s\n邮箱: %s\n角色: %s\n注册时间: %s",
                id, username, email, getRoleText(), createdAt
        );
    }

    public String getRoleText() {
        return "admin".equals(role) ? "管理员" : "顾客";
    }
}